package com.ruoyi.estate.domain;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

import com.ruoyi.common.core.domain.entity.SysDept;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 房屋管理对象 building_room
 * 
 * @author 博雅
 * @date 2023-12-19
 */
public class BuildingRoom extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 房屋ID */
    private Long roomId;

    /** 房屋编号 */
    @Excel(name = "房屋编号")
    private String roomNum;

    /** 单元ID */
    @Excel(name = "单元ID")
    private String unitId;

    /** 层数 */
    @Excel(name = "层数")
    private String layer;

    /** 户型:10101:一室一厅;10102:两室一厅;10103
:三室一厅 */
    @Excel(name = "户型:10101:一室一厅;10102:两室一厅;10103 :三室一厅")
    private String apartment;

    /** 建筑面积 */
    @Excel(name = "建筑面积")
    private BigDecimal builtUpArea;

    /** 算费系数 */
    private BigDecimal feeCoefficient;

    /** 房屋状态，如房屋出售等，请查看state 表 如未销售，未入住，已交房，已装修，已入住 */
    @Excel(name = "房屋状态，如房屋出售等，请查看state 表 如未销售，未入住，已交房，已装修，已入住")
    private String roomState;

    /** 房屋类型 110 住宅房屋，119 办公室 120 宿舍 */
    @Excel(name = "房屋类型 110 住宅房屋，119 办公室 120 宿舍")
    private String roomSubType;

    /** 室内面积 */
    @Excel(name = "室内面积")
    private BigDecimal roomArea;

    /** 租金 */
    @Excel(name = "租金")
    private BigDecimal roomRent;

    /** 备注 */
    @Excel(name = "备注")
    private String remark;

    /** 精装修 */
    private String refinedDecoration;

    private String floorId;//楼栋ID

    private Integer level=2;//数据所在层级 1、楼栋 2、单元

    private String roomInfo;//房屋楼栋+单元+房屋编号
    private String ownerInfo;//业主信息

    public String getOwnerInfo() {
        return ownerInfo;
    }

    public void setOwnerInfo(String ownerInfo) {
        this.ownerInfo = ownerInfo;
    }

    public String getFloorId() {
        return floorId;
    }

    public void setFloorId(String floorId) {
        this.floorId = floorId;
    }

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public Integer getLevel() {
        return level;
    }

    public void setLevel(Integer level) {
        this.level = level;
    }

    public String getRoomInfo() {
        return roomInfo;
    }

    public void setRoomInfo(String roomInfo) {
        this.roomInfo = roomInfo;
    }

    public void setRoomId(Long roomId)
    {
        this.roomId = roomId;
    }

    public Long getRoomId() 
    {
        return roomId;
    }
    public void setRoomNum(String roomNum) 
    {
        this.roomNum = roomNum;
    }

    public String getRoomNum() 
    {
        return roomNum;
    }
    public void setUnitId(String unitId) 
    {
        this.unitId = unitId;
    }

    public String getUnitId() 
    {
        return unitId;
    }
    public void setLayer(String layer) 
    {
        this.layer = layer;
    }

    public String getLayer() 
    {
        return layer;
    }
    public void setApartment(String apartment) 
    {
        this.apartment = apartment;
    }

    public String getApartment() 
    {
        return apartment;
    }
    public void setBuiltUpArea(BigDecimal builtUpArea) 
    {
        this.builtUpArea = builtUpArea;
    }

    public BigDecimal getBuiltUpArea() 
    {
        return builtUpArea;
    }
    public void setFeeCoefficient(BigDecimal feeCoefficient) 
    {
        this.feeCoefficient = feeCoefficient;
    }

    public BigDecimal getFeeCoefficient() 
    {
        return feeCoefficient;
    }
    public void setRoomState(String roomState) 
    {
        this.roomState = roomState;
    }

    public String getRoomState() 
    {
        return roomState;
    }
    public void setRoomSubType(String roomSubType) 
    {
        this.roomSubType = roomSubType;
    }

    public String getRoomSubType() 
    {
        return roomSubType;
    }
    public void setRoomArea(BigDecimal roomArea) 
    {
        this.roomArea = roomArea;
    }

    public BigDecimal getRoomArea() 
    {
        return roomArea;
    }
    public void setRoomRent(BigDecimal roomRent) 
    {
        this.roomRent = roomRent;
    }

    public BigDecimal getRoomRent() 
    {
        return roomRent;
    }
    public void setRefinedDecoration(String refinedDecoration) 
    {
        this.refinedDecoration = refinedDecoration;
    }

    public String getRefinedDecoration() 
    {
        return refinedDecoration;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("roomId", getRoomId())
            .append("roomNum", getRoomNum())
            .append("unitId", getUnitId())
            .append("layer", getLayer())
            .append("apartment", getApartment())
            .append("builtUpArea", getBuiltUpArea())
            .append("feeCoefficient", getFeeCoefficient())
            .append("remark", getRemark())
            .append("createTime", getCreateTime())
            .append("roomState", getRoomState())
            .append("roomSubType", getRoomSubType())
            .append("roomArea", getRoomArea())
            .append("roomRent", getRoomRent())
            .append("refinedDecoration", getRefinedDecoration())
            .toString();
    }
}
